package org.jeecg.modules.lab.entrust.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * @Description: 监督方案
 * @Author: jeecg-boot
 * @Date:   2025-03-03
 * @Version: V1.0
 */
@Data
@TableName("lab_wsupervise_scheme")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="lab_wsupervise_scheme对象", description="监督方案")
public class LabWsuperviseScheme implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private Date createTime;
	/**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private Date updateTime;
	/**所属部门*/
    @ApiModelProperty(value = "所属部门")
    private String sysOrgCode;
	/**监督任务id*/
    @ApiModelProperty(value = "监督任务id")
    private String wsupTaskId;
	/**监督任务*/
	@Excel(name = "监督任务", width = 15)
    @ApiModelProperty(value = "监督任务")
    private String wsupTaskName;
	/**方案名称*/
	@Excel(name = "方案名称", width = 15)
    @ApiModelProperty(value = "方案名称")
    private String schemeName;
	/**编辑人*/
	@Excel(name = "编辑人", width = 15)
    @ApiModelProperty(value = "编辑人")
    private String editor;
	/**编辑人id*/
    @ApiModelProperty(value = "编辑人id")
    private String editorId;
	/**编辑日期*/
	@Excel(name = "编辑日期", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "编辑日期")
    private Date editDate;
	/**审核人id*/
    @ApiModelProperty(value = "审核人id")
    private String auditId;
	/**审核人*/
	@Excel(name = "审核人", width = 15)
    @ApiModelProperty(value = "审核人")
    private String auditor;
	/**审核意见*/
	@Excel(name = "审核意见", width = 15)
    @ApiModelProperty(value = "审核意见")
    private String auditCause;
	/**退回人*/
    @ApiModelProperty(value = "退回人")
    private String returner;
	/**退回时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "退回时间")
    private Date returnTime;
	/**退回原因*/
	@Excel(name = "退回原因", width = 15)
    @ApiModelProperty(value = "退回原因")
    private String returnCause;
	/**审核时间*/
	@Excel(name = "审核时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "审核时间")
    private Date auditTime;
	/**下发人*/
	@Excel(name = "下发人", width = 15)
    @ApiModelProperty(value = "下发人")
    private String issuer;
	/**下发时间*/
	@Excel(name = "下发时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "下发时间")
    private Date issueTime;
	/**接收人*/
	@Excel(name = "接收人", width = 15)
    @ApiModelProperty(value = "接收人")
    private String receiver;
	/**接收人id*/
    @ApiModelProperty(value = "接收人id")
    private String receiveId;
	/**状态*/
	@Excel(name = "状态", width = 15)
    @ApiModelProperty(value = "状态")
    private String status;
	/**方案附件*/
    @ApiModelProperty(value = "方案附件")
    private String schemeAtta;
    /**数据同步标识*/
    @ApiModelProperty(value = "数据同步标识")
    private java.lang.String synFlag;
}
